#include "iuCommandArp.hpp"
#include <cstdio>
#include "iuApplication.hpp"
#include "iuARPTable.hpp"

/**
 * @brief Recupere le nom de la commande
 * @return Renvoie le nom de la commande (ici, "arp")
 */
const char *iuCommandArp::getName() const
{
   static const char *name = "arp";
   
   return name;
}

/**
 * @brief Execute la commande
 * @param numArgs le nombre d'arguments de la commande
 * @param args les arguments de la commande (args[0] est le nom de la commande)
 * @param app l'application executant la commande
 */
void iuCommandArp::execute(int numArgs, char **args, iuApplication &app)
{
   iuARPTable &table = app.getModuleARP().getARPTable();
   
   //Affiche les entrees de la table ARP
   if (numArgs == 1)
   {
      table.print();
   }
   
   //Usage incorrect
   else
   {
      printf("Incorrect usage:\n");
      printf("  arp: Lists the entries of the ARP table\n");
   }
}
